package edu.nuc.ahm.juc.unsafecollection;

import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
import java.util.concurrent.ConcurrentHashMap;

/*
*  并发修改异常  ConcurrentModificationException
*  // Colletions.synchronizedMap()
*  // CopyOnWrite  !!! 没有  -- 》 ConCurrentMap
*
* */
public class MapTest {
    public static void main(String[] args) {
        // map 是 这样用的嘛？不是 默认等价于什么？ 工作中不用HashMap
//        Map<String,Object> map = new HashMap<String, Object>(16,0.75f);
        // loadFactory  三个重载 加载因子  还有一个是 初始化容量
        Map<String,Object> map = new ConcurrentHashMap<>();
        for (int i = 0; i < 30; i++) {
            new Thread(()->{
                map.put(Thread.currentThread().getName(), UUID.randomUUID().toString().substring(0,5));
                System.out.println(map);
            },String.valueOf(i)).start();
        }




    }
}
